home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Apple WWDC 1996
/
WWDC96_1996 (CD).toast
/
Technology Materials
/
MacOS 8 Resources
/
Developer Tools
/
Mac OS 8 Interfaces & Libraries
/
Interfaces
/
IDLIncludes
/
DesktopAnimDraw.idl
< prev
next >
Wrap
Text File
|
1996-05-01
|
5KB
|
131 lines
/*
File: DesktopAnimDraw.idl
Contains: Declarations for the SOM based Screen Saver/Desktop drawing object.
Version: Technology: 3/5/96 2/15/96 2/1/96 1/29/96 1/22/96 12/7/95 12/2/95 12/1/95 11/23/95 8/11/95 DesktopAnimation.i <9> <8> <7> <6> <5> <4> <3> <2> <1>
Release: Universal Interfaces 3.0d3 on Copland DR1
Copyright: © 1995-1996 by Apple Computer, Inc. All rights reserved.
Bugs?: If you find a problem with this file, send the file and version
information (from above) and the problem description to:
Internet: apple.bugs@applelink.apple.com
AppleLink: APPLE.BUGS
*/
#ifndef __DESKTOPANIMDRAW_IDL__
#define __DESKTOPANIMDRAW_IDL__
#define USE_OLD_WINDOWREFS 1
#include <AppleEvents.idl>
#include <DesktopAnimBase.idl>
#if !USE_OLD_WINDOWREFS
#include <HIWindows.idl>
#endif
#include <Quickdraw.idl>
interface DesktopAnimDraw : DesktopAnimBase
{
/* initialization/destruction */
OSStatus Initialize(in AVIDType prefsDisplayID, in DesktopAnimModuleDescRef moduleDescRef,
in DesktopAnimModuleInfo moduleInfo);
#if USE_OLD_WINDOWREFS
OSStatus Open(in RgnHandle fullRgn, in WindowRef drawWindow, in TextObject errorText,
inout AbsoluteTime nextAnimateTime);
#else
OSStatus Open(in RgnHandle fullRgn, in HIWindow drawWindow, in TextObject errorText,
inout AbsoluteTime nextAnimateTime);
#endif
OSStatus Close();
/* Screen Savers only */
OSStatus OpenRequest(in DesktopAnimModuleInfo moduleInfo, in TextObject errorText,
out boolean initializeOK);
OSStatus CloseRequest(in ScreenSaverUnfadeType unfadeReason, out boolean terminateOK);
/* Animation */
OSStatus Animate(in DesktopAnimFlags drawFlags, inout AbsoluteTime nextAnimateTime);
OSStatus GetAnimateDrawingRgn(in RgnHandle drawRgn);
/* Drawing */
OSStatus Draw(in RgnHandle drawRgn, in AVIDType displayID, in DesktopAnimGraphicsPorts drawingPorts,
in DesktopAnimFlags drawFlags, in boolean doFullDraw);
OSStatus DrawBackgroundRgn(in RgnHandle drawRgn, in AVIDType displayID,
in DesktopAnimGraphicsPorts drawingPorts, in DesktopAnimFlags drawFlags,
in boolean doFullDraw);
/* Offscreen support */
OSStatus CreateOffscreenGraphicsPorts(in SInt16 depth, in Rect boundsRect, in CTabHandle colorTable,
out DesktopAnimOffscreenGraphicsPorts offDrawingPorts);
void DisposeOffscreenGraphicsPorts(in DesktopAnimOffscreenGraphicsPorts offDrawingPorts);
void SetOriginOffscreenGraphicsPorts(in Point newOrigin, in DesktopAnimOffscreenGraphicsPorts offDrawingPorts);
/* Events */
OSStatus HandleAppleEvent(in AppleEvent theAppleEvent, in AppleEvent reply);
#if USE_OLD_WINDOWREFS
OSStatus SetModuleMode(in DesktopAnimFlags drawFlags, in RgnHandle fullRgn, in WindowRef drawWindow,
inout AbsoluteTime nextAnimateTime);
#else
OSStatus SetModuleMode(in DesktopAnimFlags drawFlags, in RgnHandle fullRgn, in HIWindow drawWindow,
inout AbsoluteTime nextAnimateTime);
#endif
OSStatus UpdateModuleProperty(in CollectionTag tag, in UInt32 propDataSize, in void* propData,
inout AbsoluteTime nextAnimateTime, out boolean needsRedraw);
/* Accessors */
DesktopAnimDraw GetBackgroundDrawer();
void GetModuleInfo(out DesktopAnimModuleInfo moduleInfo);
void SetBackgroundDrawer(in DesktopAnimDraw backgroundDrawer);
void SetModuleInfo(in DesktopAnimModuleInfo moduleInfo);
/* attributes */
attribute boolean fAnimates;
attribute RgnHandle fDesktopRgn;
#if USE_OLD_WINDOWREFS
readonly attribute WindowRef fDrawWindow;
#else
readonly attribute HIWindow fDrawWindow;
#endif
#ifdef __SOMIDL__
implementation
{
passthru C_h = "#include <Events.h>"
"#include <Quickdraw.h>"
#if USE_OLD_WINDOWREFS
;
#else
"#include <HIWindows.h>";
#endif
passthru C_xh = "#include <Events.h>"
"#include <Quickdraw.h>"
#if USE_OLD_WINDOWREFS
;
#else
"#include <HIWindows.xh>";
#endif
/* Release Order. Note, only append to the end of this
* list, so that the base class is forward compatible. */
releaseorder: fDesktopRgn, fDrawWindow, fAnimates,
_get_fDesktopRgn, _set_fDesktopRgn, _get_fDrawWindow,
_get_fAnimates, _set_fAnimates,
Initialize, Open, Close, OpenRequest, CloseRequest,
Draw, DrawBackgroundRgn, HandleAppleEvent, SetModuleMode,
UpdateModuleProperty, GetModuleInfo,
GetBackgroundDrawer, SetBackgroundDrawer, Animate,
SetModuleInfo, GetAnimateDrawingRgn, CreateOffscreenGraphicsPorts,
DisposeOffscreenGraphicsPorts, SetOriginOffscreenGraphicsPorts;
};
#endif
};
#endif